Visual preview of search results

ABSTRACT

Many software applications allow users to consume and interact with a variety of data, such as files, photos, web pages, emails, and/or other content. Because the amount of content may be cumbersome to sift through, software applications may provide filtering and searching capabilities to aid users in finding desired content. However, the trial and error involved in current searching techniques may be time consuming and/or diminish the user&#39;s experience. Accordingly, one or more systems and/or techniques for presenting visual previews of search results are disclosed herein. In particular, a user may reference an identifier (e.g., “Bill”) that may be used as search criteria to retrieve corresponding objects (e.g., photos of Bill). A visual preview of the retrieved objects may be presented to the user. The user may quickly view visual previews of search results by referencing various identifiers without committing to a particular search result set.

RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.12/916,286, filed on Oct. 29, 2010, entitled “VISUAL PREVIEW OF SEARCHRESULTS,” at least some of which may be incorporated herein.

BACKGROUND

Today, software applications provide rich filtering and searchingcapabilities for a variety of data. In one example, an email applicationmay allow users to filter emails by date received, sender, subject, etc.In another example, a photo gallery web application may allow users tofilter photos based upon date uploaded, people tagged within the photos,user rating, color, etc. Such filters may improve a user's searchexperience by narrowing a large amount of data into manageable sets ofsearch results. Unfortunately, the process of filtering/searching mayresult in extensive trial and error for the user. For example, a usermay attempt to locate an email sent by someone having the first name Danabout 5 to 9 months ago. At first, the user may choose a “date” filter(e.g., date=past year), and then commit a search query using the “date”filter. Unfortunately, the user may clear/dismiss the search results,and start over because the search results may comprise a large amount ofemails that may be burdensome to sift through. Starting over, the usermay choose a different filter, such as a “sender” filter (e.g.,sender=“Dan”), and then commit a search query using the “sender” filter.Again the search results may comprise a large amount of emails that maynot be helpful. The search, clear, new search cycle may be repeatedmultiple times before the desired email is found. This type of userexperience may be cumbersome, require a large number of user inputs(e.g., mouse clicks), and may diminish the user's confidence andsatisfaction with application's overall search experience.

SUMMARY

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key factors oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter.

Among other things, one or more systems and/or techniques for presentinga visual preview are disclosed herein. In particular, visual previews ofsearch results may be presented. Many software applications, such asemail applications, online photo gallery web applications, socialnetworks, and/or other content driven applications, may providefiltering and/or searching capabilities. Currently, a user mayrepetitively: invoke a search; view search results; clear undesirablesearch results; invoke a new search; etc. over and over until a desiredsearch result set is retrieved. Accordingly, as provided herein, visualpreviews of objects may be provided to users based upon usersreferencing identifiers corresponding to filter/search criteria. Inparticular, a user may reference an identifier (e.g., Sender=“Dan”) thatmay be used as search criteria to retrieve objects (e.g., emails), whichmay be presented within a visual preview (e.g., a preview of emails sentby Dan). The user may quickly view visual previews of objects byreferencing various identifiers without committing to a particularsearch result set.

It may be appreciated that a visual preview may be presented in responseto a user referencing an identifier, as opposed to the userinvoking/selecting the identifier. For example, a ribbon user interfacemay comprise gallery menus (e.g., Sender gallery, Subject gallery, Dategallery, etc.). A gallery menu may comprise a set of identifiers (e.g.,a plurality of date identifiers within a Date gallery). The gallery menumay allow the user to hover over and/or select identifiers correspondingto search filters within the gallery menu (e.g., a Date gallery maycomprise date identifiers that may be used as search filters). It may beappreciated that an identifier may be referenced is a variety of ways.In one example, an identifier may be referenced by user input hoveringover an identifier with a cursor (e.g., an identifier March may behovered over within a Date gallery). In response to the referencing, avisual preview of objects corresponding to the identifier may bepresented (e.g., a visual preview of emails received during March).Additionally, the identifier may be unreferenced by hovering off theidentifier, for example. In response to the unreferencing, the visualpreview may be removed. Thus, the user may quickly preview visualpreviews of search results by referencing various identifiers withoutcommitting to a particular search result set.

In one example, a first user input comprising a referenced identifiermay be received. For example, a user may have referenced (e.g., hoveredover) an identifier (Genre=“Jazz”) within a music genre gallery menu ofa music application. One or more objects, such as music files, may beretrieved using the referenced identifier (Genre=“Jazz”) as searchcriteria. For example, the word “Jazz” may be used to search for musicfiles having a category of Jazz, which may be specified within metadata.It may be appreciated that the user may subsequently reference otheridentifiers in order to see other visual previews. In this way, a firstvisual preview of the one or more music files may be presented withoutthe user committing to search results based upon a full search using theidentifier (Genre=“Jazz”).

It may be appreciated that various user input may be received. In afirst example, a second user input unreferencing the referencedidentifier may be received. For example, the user may hover off theidentifier (Genre=“Jazz”) within the music genre menu. In response tothe unreferencing, the presentation of the first visual preview may beremoved. In a second example, a second user input selecting thereferenced identifier may be received. In this way, the user may committo search results based upon the selected identifier. Thus, a persistedview of the one or more objects may be presented. The persisted view maycomprise standard search result objects that may persist even thoughcertain user input, such as a user hovering off the selected identifier,may occur. In contrast, a visual preview may comprise a temporary viewof search results that may be presented until the user unreferences(hovers off) the selected identifier. In a third example, a second userinput comprising a new referenced identifier may be received (e.g., theuser hovers off of identifier (Genre=“Jazz”) and hovers over anew/different identifier (Genre=“Hard Rock”)). One or more new objectsmay be retrieved by using the new referenced identifier as searchcriteria. The presentation of the first visual preview corresponding to“Jazz” may be removed, while a presentation of a second visual previewcorresponding to “Hard Rock” may be presented.

It may be appreciated that subsequent user input referencing variousidentifiers may be received. In this way, the user may quickly andeasily view corresponding visual previews of search results withoutcommitting to a particular search. For example, a user may desire aparticular file, however, the user may merely know that the file wascreated by a person at work (e.g., the user may work with 6individuals). Instead of performing potentially 6 or more separate filesearches using the individual's names, the user may quickly mouse overname identifiers of the co-workers until a desired search results set ispresented within a visual preview (e.g., a visual preview comprising thedesired file). Thus, the user may commit to merely a single search tofind the desired search result set.

To the accomplishment of the foregoing and related ends, the followingdescription and annexed drawings set forth certain illustrative aspectsand implementations. These are indicative of but a few of the variousways in which one or more aspects may be employed. Other aspects,advantages, and novel features of the disclosure will become apparentfrom the following detailed description when considered in conjunctionwith the annexed drawings.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flow chart illustrating an exemplary method of presenting avisual preview.

FIG. 2 is a flow chart illustrating an exemplary method of presenting avisual preview.

FIG. 3 is a component block diagram illustrating an exemplary system forpresenting a visual preview.

FIG. 4 is an illustration of an example of presenting a first visualpreview of photos within a photo gallery application.

FIG. 5 is an illustration of an example of presenting a first visualpreview of web content within a web application.

FIG. 6 is an illustration of an example of presenting a first visualpreview of emails within an email application.

FIG. 7 is an illustration of an example of an email application in afirst state after an identifier is referenced, and the email applicationin a second state after the referenced identifier is unreferenced.

FIG. 8 is an illustration of an example of an email application in afirst state after an identifier is referenced, and the email applicationin a second state after a new referenced identifier is referenced.

FIG. 9 is an illustration of an example of an email application in afirst state after an identifier is referenced, and the email applicationin a second state after the identifier is selected.

FIG. 10 is an illustration of an example of an email application in afirst state after an identifier is selected, and the email applicationin a second state after a new referenced identifier is referenced.

FIG. 11 is an illustration of an example of an email application in afirst state after a new identifier is referenced, and the emailapplication in a second state after the new referenced identifier isunreferenced.

FIG. 12 is an illustration of an exemplary computer-readable mediumwherein processor-executable instructions configured to embody one ormore of the provisions set forth herein may be comprised.

FIG. 13 illustrates an exemplary computing environment wherein one ormore of the provisions set forth herein may be implemented.

DETAILED DESCRIPTION

The claimed subject matter is now described with reference to thedrawings, wherein like reference numerals are used to refer to likeelements throughout. In the following description, for purposes ofexplanation, numerous specific details are set forth in order to providea thorough understanding of the claimed subject matter. It may beevident, however, that the claimed subject matter may be practicedwithout these specific details. In other instances, structures anddevices are illustrated in block diagram form in order to facilitatedescribing the claimed subject matter.

Many software applications are driven by an ever increasing amount ofcontent. For example, a computing environment may comprise hundreds ofthousands of objects ranging from system files to user generated files,such as photos, text documents, music files, spreadsheet documents,application files, etc. Similarly, a web computing environment, such asa photo sharing webpage, may comprise millions of photos uploaded byusers. To facilitate searching and consumption of desired content byusers, it may be advantageous to provide tools for organizing,searching, filtering, and/or presenting such content. In this way, usersmay quickly locate desired content, as opposed to sifting through verylarge amount of content.

Current software applications may allow users to filter and/or searchcontent. For example, an email application may comprise one or morefields into which a user may enter one or more search and/or filteringqueries (e.g., date, size, name, etc.). As a result, objects, such asfiles, corresponding to the entered query may be presented as searchresults in a persisted view. Unfortunately, the search results may notcomprise objects desired by the user (e.g., the user is unsure of theparticular date the desired file was created). Thus, the user may clearthe search results, enter a different query into the same or differentfield(s), and commit to a different search over and over until searchresults comprising the desired object(s) are returned. This trial anderror search process may lead to excessive input, wasted time, and/orfrustration of the user.

Accordingly, one or more systems and/or techniques for presenting avisual preview are provided herein. In particular, a visual preview ofobjects corresponding to a referenced identifier (a search filtercriteria) may be presented. For example, user input comprising areferenced identifier may be received. The referenced identifier may beused as search criteria to retrieve one or more objects. A visualpreview of the one or more objects may be presented. In this way, theuser may quickly reference various identifiers (e.g., hover from oneidentifier to the next) to sequentially view various visual previews ofsearch results without committing to a particular search. It may beappreciated that the terms identifier, search filter criteria, and/orsearch criteria may, at times, be used interchangeably.

As used herein, the term object refers generally to a wide variety ofcontent, such as files, photos, music files, spreadsheet data, databaseentries, descriptive data, emails, hyperlinks, URLs, text, and/or othercontent. The term identifier refers generally to search criteria orsearch filter that may be used to retrieve objects corresponding to theidentifier. In one example, a date gallery menu may comprise a set ofdate identifiers (e.g., Jan, Feb, Mar, etc.) that may be used to assearch criteria to retrieve objects, such as files, corresponding to aparticular date identifier. For example, a user may reference anidentifier (Creation Date=“Jan”), which may be used to generate a visualpreview of files created in January. It may be appreciated that a visualpreview may be generated based upon (light-weight) user inputreferencing an identifier (e.g., cursor hover over action), as opposedto (more burdensome) user input selecting the identifier (e.g., typingin a query followed by a commit or enter keystroke). Thus, a user mayhover between identifiers to view various visual previews withoutcommitting to a particular search. Accordingly, much more light-weight,user friendly and intuitive searching that allows a user to quickly andefficiently navigate into and out of one or more search result previewswithout having to laboriously query for and commit to the results isprovided herein.

One embodiment of presenting a visual preview is illustrated by anexemplary method 100 in FIG. 1. At 102, the method starts. At 104, afirst user input comprising a referenced identifier may be received. Forexample, a user may perform a hover over action of a user interfaceelement representing an identifier using a cursor within an emailapplication. For example, a user may reference an identifier(From=“Dan”) to view a visual preview of emails sent from Dan.

It may be appreciated that a variety of actions may be deemed asreferencing an identifier, as opposed to selecting an identifier. In oneexample, an identifier may be referenced based upon a particular gestureon a touch sensitive screen, as opposed to other gestures. In anotherexample, an identifier may be referenced based upon a single click usinga cursor, as opposed to a double click. In another example, anidentifier may be referenced based upon a hover over action using acursor, as opposed to a single click. In this way, a variety of(light-weight) inputs may be designated as either referencing orselecting an identifier.

At 106, one or more objects, such as files, photos, emails, web content,text, URLs, hyperlinks, and/or other objects, may be retrieved using thereferenced identifier as search criteria. For example, a file system maycomprise a plurality of files having associated metadata describing therespective files. The referenced identifier may be used as searchcriteria for retrieving objects comprising metadata matching the searchcriteria. For example, the referenced identifier (Name=“temp”) may beused as search criteria to retrieve files having names comprising thetext “temp”.

At 108, a first visual preview of the one or more objects may bepresented. In one example, the visual preview may comprise arepresentation of retrieved objects or portions thereof, a subset ofretrieved objects or portions thereof, etc. (e.g., thumbnails of photos,full sized photos, a listing of all files, a listing of less than allfiles, a listing of emails, a listing of hyperlinks, a preview of webcontent, etc.). The visual preview may differ from a persisted view ofsearch results because the visual preview may be a temporary preview ofwhat search results may be returned if the user selected the referencedidentifier. Thus, the user may preview various visual previews beforeselecting a particular identifier to commit to a corresponding searchresult set. Because a user may reference an identifier more than onceover a period of time, visual previews may be cached within memory tomitigate unnecessary retrieval of objects that are already representedby a visual preview.

It may be appreciated that subsequent user input may be received. In afirst example, a user may unreference the referenced identifier. Thereferenced identifier may be unreferenced by user input moving a cursoroff of the referenced identifier, moving the cursor out of a gallerymenu comprising the referencing identifier, moving the cursor out of aribbon gallery menu comprising the gallery menu, and/or other actions.In a second example, a user may reference a new referenced identifier,for example, by moving a cursor from the referenced identifier to thenew referenced identifier without leaving a ribbon gallery menu. Inthird example, a user may select the referenced identifier (e.g., clickthe referenced identifier) to perform a standard search for persistedsearch results. It may be appreciated that a variety of subsequent userinput is contemplated.

In a first example of subsequent user input, a second user inputunreferencing the referenced identifier may be received. For example,the user may perform a hover off action of a user interface elementrepresenting the referenced identifier. In response to theunreferencing, the presentation of the first visual preview may beremoved. The first visual preview is removed based upon the temporarynature of visual previews. In contrast, a persisted view of searchresults may persist when the user hovers off the identifier and/orperforms other actions.

In a second example of subsequent user input, a second user inputcomprising a new referenced identifier may be received. For example, theuser may hover off of the referenced identifier within gallery menu, andhover over the new referenced identifier the same or different galleymenu. One or more new objects may be retrieved using the new referencedidentifier as search criteria. It may be appreciated that the one ormore of the one or more new objects may be the same or different thanone or more of the one or more objects there were previously retrievedbased upon the first user input. The presentation of the first visualpreview may be removed, while a second visual preview of the one or morenew objects may be presented. In this way, the user may quickly viewvarious visual previews by hovering amongst identifiers.

In a third example of subsequent user input, a second user inputselecting the referenced identifier may be received. For example, theuser may perform a click action upon a user interface elementrepresenting the identifier. A standard search for objects correspondingto the selected identifier may be retrieve. A persisted view of the oneor more objects may be presented. The persisted view may persist eventhough the user may perform other actions, such as hovering off theselected identifier, navigating search result objects within thepersisted view, and/or other actions. For example, the user may move acursor around and/or interact with objects or menus without thepersisted view being removed.

A third user input comprising a new referenced identifier may bereceived. The persisted view may be filtered based upon the newreferenced identifier to generate a second visual preview. Thepresentation of the persisted view may be removed, and the second visualpreview of the filtered persisted view may be presented. It may beappreciated that the second visual preview may comprise the sametemporary attributes as a visual preview (as opposed to a persistedview). A fourth user input unreferencing the new referenced identifiermay be received. The presentation of the second visual preview of thefiltered persisted view may be removed, and the persisted view of theone or more objects (unfiltered) may be presented. In this way, the usermay quickly view visual previews of filters applied to persisted searchresults by referencing various identifiers without committing to aparticular filter. At 110, the method ends.

One embodiment of presenting a visual preview is illustrated by anexemplary method 200 in FIG. 2. At 202, the method starts. At 204, afirst user input comprising a first search filter criteria (e.g., anidentifier listed within a gallery menu) may be received. The first userinput may correspond to a user hover over action. For example, a usermay have hovered over a user interface element representing the firstsearch filter criteria. It may be appreciated that the terms searchfilter criteria and identifier may be used interchangeably to refer toan identifier that may be used as a filter and/or search criteria. At206, one or more objects may be retrieved based upon the search filtercriteria. At 208, a first visual preview of the one or more objects maybe presented. At 210, a second user input comprising a second searchfilter criteria may be received. The second user input may correspond toa user hover over action. For example, the user may have hovered off ofthe first search filter criteria, and hovered onto the second searchfilter criteria within a gallery menu. At 212, one or more new objectsmay be retrieved based upon the second filter criteria. It may beappreciated that one or more of the one or more new objects may be thesame or different than one or more of the one or more objects retrievedusing the first search filter criteria. At 214, the presentation of thefirst visual preview may be replaced with a presentation of the secondvisual preview. At 214, the method ends.

FIG. 3 illustrates an example of a system 300 configured for presentinga visual preview. The system 300 may comprise a visual preview generator302 configured to present visual previews. In one example, the visualpreviews may be presented within a computing environment 318, such as adesktop application, a desktop operating system, a web browser, a webapplication, a mobile operating system, and/or other applications.

The visual preview generator 302 may be configured to receive a firstuser input comprising a referenced identifier 308. For example, a usermay hover over an identifier 304 within a menu associated with thecomputing environment 318 using a cursor 306. The visual previewgenerator 302 may retrieve one or more objects 312 using the referencedidentifier 308 as search criteria. In one example, the one or moreobjects may be retrieved from an object repository 310 (e.g., adatabase, one or more folders within a local file system, a remote fileserver, a spreadsheet, a text file, and/or a variety of data structuresand/or memory devices). In one example, objects comprising metadatamatching the search criteria may be retrieved from the object repository310. The visual preview generator 302 may present a first visual preview314 comprising the one or more objects (presentation of the visualpreview 316). Because a user may reference an identifier more than onceover a period of time, the visual preview generator 302 may cache visualpreviews within memory to mitigate unnecessary retrieval of objects thatare already represented within a visual preview.

It may be appreciated that the visual preview generator 302 may beconfigured to receive and/or process subsequent user input. In a firstexample of subsequent user input, the visual preview generator 302 mayreceive a second user input unreferencing the referenced identifier 308.For example, the user may have moved the cursor 306 off of theidentifier 304. In response to the unreferencing, the visual previewgenerator 302 may remove the presentation of the visual preview 316.

In a second example of subsequent user input, the visual previewgenerator 302 may receive a second user input comprising a newreferenced identifier. For example, the user may have moved the cursor306 off of the identifier 304, and onto a new identifier notillustrated. In response to the second user input, the visual previewgenerator 302 may retrieve one or more new objects using the newreferenced identifier as search criteria. The visual preview generator302 may remove the presentation of the first visual preview 316, andpresent a second visual preview of the one or more new objects. In thisway, the user may view various visual previews by referencingcorresponding identifiers without committing to a particular searchresults set.

It a third example of subsequent user input, the visual previewgenerator 302 may receive a second user input selecting the referencedidentifier. For example, the user may have clicked the identifier 304with the cursor 306. In response to the selection, the visual previewgenerator 302 may present a persisted view of the one or more objects.Additionally, the visual preview generator 302 may be configured toreceive a third user input comprising a new referenced identifier. Inresponse to the third user input, the visual preview generator 302 mayfilter the persisted view based upon the new referenced identifier togenerate a second visual preview of the filtered persisted view. Forexample, the persisted view may comprise photos filtered based upon anidentifier (Person=“Colleen”), such that photos within the persistedview depict Colleen. The persisted view of photos depicting Colleen maybe filtered based upon a new referenced identifier (Person=“Jim”). Thus,a second visual preview of photos depicting both Colleen and Jim may begenerated. The visual preview generator 302 may remove the presentationof the persisted view (photos of Colleen), and present the second visualpreview of the filtered persisted view (photos of Colleen and Jim). Thevisual preview generator 302 may be configured to receive a fourth userinput unreferencing the new referenced identifier. For example, the usermay move the cursor 306 off of the new referenced identifier(Person=“Jim”) because the user may have determined that the desiredphoto does not comprise both Jim and Colleen, but merely Colleen. Inresponse to the unreferencing, the visual preview generator 302 mayremove the presentation of the second visual preview of the filteredpersisted view, and present the persisted view of the one or moreobjects.

FIG. 4 illustrates an example 400 of presenting a first visual previewof photos 410 within a photo gallery application 402. In one example,the photo gallery application 402 may provide a user with the ability toupload, view, organize, share, and/or perform other various tasks withphoto objects. The photo gallery application 402 may have access to anobject repository 412 (e.g., a local file folder, a remote file server,a database, etc.) comprising photo objects associated with the user. Inone example, one or more of the photo objects may comprise metadata thatmay be used by the photo gallery application 402 to locate desired photoobjects during searches. For example, a car photo object may comprisemetadata specifying the main color of the car photo object as red, atagged object within the photo as new car, and/or other information.

The photo gallery application 402 may comprise a ribbon user interfacemenu 414 that may allow the user to filter and/or search photo objects.The ribbon user interface menu 414 may comprise gallery menus, such asrating gallery, people gallery 404, color gallery, date gallery, and/orother galleries not illustrated. A gallery menu may comprise a set ofidentifiers that may be used as search criteria to retrieve photoobjects corresponding to the respective identifiers. For example, thepeople gallery 404 may comprise a set of identifiers 406, such as(People=“Dan”), (People=“Colleen”), (People=“George”), (People=“Jen”),and/or other identifiers not illustrated.

In one example, a user may have a plurality of personal photos storedwithin the object repository 412. For example, the object repository 412may comprise photos of the user's new car, vacations of the user, photosof friends and family, and/or thousands of other photos. The user mayutilize the photo gallery application 402 to locate photos depicting theuser's vacation to a national forest 2 years ago. Unfortunately, thephotos may not be organized such that the user's vacation photos arereadily available. However, the user may remember that one of the photosmay depict a friend George near the lake. Thus, the user may begin thesearch by hovering over the people gallery 404 within the ribbon userinterface menu 414 with a cursor. In response to hovering over thepeople gallery 404, the set of identifiers 406 may be presented to theuser. The user may reference 408 the identifier (People=“George”) byhovering over the identifier (People=“George”) with the cursor. Theidentifier (People=“George”) may be used as search criteria to retrieveone or more photo objects depicting George. In this way, the firstvisual preview of photos 410 comprising photos depicting George may bepresented without the user committing to a particular search withpersisted search results.

Subsequently, the user may determine that more photos were taken withJen than George during the national forest vacation. Thus, the user mayreference a new identifier (People=“Jen”) by hovering off the identifier(People=“George”), and hovering onto the new identifier (People=“Jen”).In response to referencing the new identifier, the first visual previewof photos 410 may be replaced with a second visual preview comprisingphotos depicting Jen. The switching of visual previews allows the userto quickly view visual previews of photos relating to a variety ofpeople, ratings, colors, dates, and/or other identifiers by referencingvarious identifiers without committing to a particular search resultset.

FIG. 5 illustrates an example 500 of presenting a first visual previewof web content 510 within a web application 502. In one example, the webapplication 502, such as a web browsing application, may provide userswith the ability to search and/or perform other various tasks relatingto web content objects, such as images, hyperlinks, website URLs, webapplications, and/or other web data. The web application 502 may haveaccess to an object repository 512 (e.g., various web content providersthroughout the internet). In one example, one or more of the web contentobjects may comprise metadata that may be used by the web application502 to locate desired web content objects during searches. For example,a website (A) may comprise metadata specifying the category asautomobiles, the creation date as Sep. 10, 2010, a keyword as insurance,and/or other information.

The web application 502 may comprise a ribbon user interface menu 514that may allow the user to filter and/or search web content objects. Theribbon user interface menu 514 may comprise gallery menus, such askeywords gallery, date created gallery, color gallery, category gallery504, and/or other galleries not illustrated. A gallery menu may comprisea set of identifiers that may be used as search criteria to retrieve webcontent corresponding to the respective identifiers. For example, thecategory gallery 504 may comprise a set of identifiers 506, such as(Category=“Health”), (Category=“Finance”), (Category=“Homes”),(Category=“Automobile”), (Category=“Boats”), and/or other identifiersnot illustrated.

In one example, a user may desire information on cars. The user mayutilize the web application 502 to locate web content relating toautomobiles. The user may hover over the category gallery 504 within theribbon user interface menu 514 with a cursor. In response to hoveringover the category gallery 504, the set of identifiers 506 may bepresented to the user. The user may reference 508 identifier(Category=“Automobiles”) by hovering over the identifier(Category=“Automobiles”) with the cursor. The identifier(Category=“Automobiles”) may be used as search criteria to retrieve webcontent relating to automobiles (e.g., a URL to an insurance website,images of cars, a car cost calculator web application, etc.). In thisway, the first visual preview of web content 510 may be presentedwithout the user committing to a particular search with persisted searchresults.

Subsequently, the user may realize that information regarding car loansmay be advantage to know before choosing a car. Thus, the user mayreference a new identifier (Category=“Finance”) by hovering off theidentifier (Category=“Automobiles”), and hovering onto the newidentifier (Category=“Finance”). In response to referencing the newidentifier, the first visual preview of web content 510 may be replacedwith a second visual preview comprising web content relating to finance.The switching of visual previews allows the user to quickly view visualpreviews of web content relating to a variety of keywords, creationdates, colors, categories, and/or other identifiers by referencingvarious identifiers without committing to a particular search resultset.

FIG. 6 illustrates an example 600 of presenting a first visual previewof emails 610 within an email application 602. In one example, the emailapplication 602 may provide users with the ability to create, send,receive, view, organize, and/or perform other various tasks with emailobjects. The email application 602 may have access to an objectrepository 612 (e.g., an email server, a local email storage, etc.). Inone example, one or more of the email objects may comprise metadata thatmay be used by the email application 602 to locate desired email objectsduring searches. For example, an email (1) object may comprise metadataspecifying date received, subject, from, and/or other properties orfields of email (1) object.

The email application 602 may comprise a ribbon user interface menu 614that may allow the user to filter and/or search email objects. Theribbon user interface menu 614 may comprise gallery menus, such as a togallery, from gallery, subject gallery, date gallery 604, and/or othergalleries not illustrated. A gallery menu may comprise a set ofidentifiers that may be used as search criteria to retrieve emailcorresponding to the respective identifiers. For example, the dategallery 604 may comprise a set of identifiers 606, such as (Date=“Jan”),(Date=“Feb”), (Date=“March”), (Date=“April”), and/or other identifiersnot illustrated.

In one example, a user may desire an email that may have been receivedsometime between March and June. The user may begin the search byhovering over the date gallery 604 within the ribbon user interface menu614 with a cursor. In response to hovering over the date gallery 604,the set of identifiers 606 may be presented to the user. The user mayreference 608 identifier (Date=“April”) by hovering over the identifier(Date=“April”) with the cursor. The identifier (Date=“April”) may beused as search criteria to retrieve emails received in April. In thisway, the first visual preview of emails 610 may be presented without theuser committing to a particular search with persisted search results.

Subsequently, the user may become frustrated because the first visualpreview of emails 610 may comprise too many emails to sift through.Thus, upon remembering the subject may have comprised the text“insurance”, the user may reference a new identifier(Subject=“insurance”) by hovering off the identifier (Date=“April”), andhovering onto the new identifier (Subject=“insurance”). In response toreferencing the new identifier, the first visual preview of emails 610may be replaced with a second visual preview comprising emails havingsubjects with the text “insurance”. The switching of visual previewsallows the user to quickly view visual previews of web content relatingto a variety of search criteria by referencing various identifierswithout committing to a particular search result set.

FIG. 7 illustrates an example 700 of an email application in a firststate 702 after an identifier is referenced, and the email applicationin a second state 712 after the referenced identifier is unreferenced.The email application may comprise a ribbon user interface that mayallow a user to filter and/or search emails. The ribbon user interfacemay comprise gallery menus (e.g., date gallery). A gallery menu maycomprise a set of identifiers (e.g., set of date identifiers 706) thatmay be referenced by user input to view visual previews; unreferenced byuser input to remove visual previews; and/or selected by user input toperform a particular search for persisted search results.

In one example, a user may desire a particular email. The user may beginthe search by hovering over the date gallery with a cursor to view theset of date identifiers 706. The user may reference 708 identifier(Date=“April”) by hovering over the identifier (Date=“April”). Inresponse to the user input referencing the identifier (Date=“April”), afirst visual preview of emails 710 may be presented. In this way, theemail application may be in the first state 702, where the first visualpreview of emails 710 is presented based upon the user referencing theidentifier (Date=“April”).

Subsequently, the user may unreference 718 the identifier (Date=“April”)by hovering off the identifier (Date=“April”), the date gallery, and/orthe ribbon user interface. In response to the user input unreferencingthe identifier (Date=“April”), the first visual preview may be removed720. In this way, the email application may be in the second state 712,where the first visual preview of emails is removed 720 based upon theuser unreferencing 718 the identifier (Date=“April”).

FIG. 8 illustrates an example 800 of an email application in a firststate 802 after an identifier is referenced, and the email applicationin a second state 812 after a new referenced identifier is referenced.The email application may comprise a ribbon user interface that mayallow the user to filter and/or search emails. The ribbon user interfacemay comprise gallery menus (e.g., date gallery). A gallery menu maycomprise a set of identifiers (e.g., set of date identifiers 806) thatmay be referenced by user input to view visual previews; unreferenced byuser input to remove visual previews; and/or selected by user input toperform a particular search for persisted search results.

In one example, a user may desire a particular email. The user may beginthe search by hovering over the date gallery with a cursor to view theset of date identifiers 806. The user may reference 808 identifier(Date=“April”) by hovering over the identifier (Date=“April”). Inresponse to the user input referencing the identifier (Date=“April”), afirst visual preview of emails 810 may be presented. In this way, theemail application may be in the first state 802, where the first visualpreview of emails 810 is presented based upon the user referencing theidentifier (Date=“April”).

Subsequently, the user may determine that the desired email was notreceived in April, but may have been received in March. Thus, the usermay reference 818 a new identifier (Date=“March”) within the dategallery. A second visual preview of new emails 820 may be generatedusing the new identifier (Date=“March”) as search criteria for newemails. The first visual preview of emails 810 may be replaced with thesecond visual preview of new emails 820. In this way, the emailapplication may be in the second state 812, where the first visualpreview of emails 810 is replaced with the second preview of emails 820based upon the user referencing the new identifier (Date=“March”).

FIG. 9 illustrates an example 900 of an email application in a firststate 902 after an identifier is referenced, and the email applicationin a second state 912 after the identifier is selected. The emailapplication may comprise a ribbon user interface that may allow the userto filter and/or search emails. The ribbon user interface may comprisegallery menus (e.g., date gallery). A gallery menu may comprise a set ofidentifiers (e.g., set of date identifiers 906) that may be referencedby user input to view visual previews; unreferenced by user input toremove visual previews; and/or selected by user input to perform aparticular search for persisted search results.

In one example, a user may desire a particular email. The user may beginthe search by hovering over the date gallery with a cursor to view theset of date identifiers 906. The user may reference 908 identifier(Date=“April”) by hovering over the identifier (Date=“April”). Inresponse to the user input referencing the identifier (Date=“April”), afirst visual preview of emails 910 may be presented. In this way, theemail application may be in the first state 902, where the first visualpreview of emails 910 is presented based upon the user referencing theidentifier (Date=“April”).

Subsequently, the user may determine that the visual preview of emails910 comprises the desired email. Thus, the user may select 918 theidentifier (Date=“April”). In response to the selection, a persistedview of emails 920 may be generated. For example, a full search usingthe identifier (Date=“April”) may be performed to retrieve a persistedview of search results. The visual preview of emails 910 may be replacedwith the persisted view of emails 920. In this way, the emailapplication may be in the second state 912, where the first visualpreview of emails 910 is replaced with the persisted view of emails 920based upon the user selecting the identifier (Date=“April”).

FIG. 10 illustrates an example 1000 of an email application in a firststate 1002 after an identifier is selected, and the email application ina second state 1012 after a new referenced identifier is referenced. Theemail application may comprise a ribbon user interface that may allowthe user to filter and/or search emails. The ribbon user interface maycomprise gallery menus (e.g., date gallery and/or to gallery). A gallerymay comprise a set of identifiers (e.g., a set of date identifiers 1006,a set of to identifiers 1016, etc.) that may be referenced by user inputto view visual previews; unreferenced by user input to remove visualpreviews; and/or selected by user input to perform a particular searchfor persisted search results.

In one example, a user may have selected a particular identifier, suchas identifier (Date=“April”). In response to the selection, a persistedview of emails 1010 may have been presented within the email applicationas illustrated in the first state 1002. The persisted view of emails1010 may remain presented while the user performs other particularactions, such as moving 1008 a cursor out of the ribbon user interface,interacting with emails, navigating the email application, etc.

Subsequently, the user may determine that the persisted view of emails1010 may comprise too many emails to sift through. Thus, the user mayreference new identifiers to filter the persisted view of emails 1010.For example, the user may reference 1018 a new identifier (To=“Bill”) byhovering over the new identifier (To=“Bill”). In response to the userinput referencing the new identifier (To=“Bill”), the persisted view ofemails 1010 may be replaced with a second visual preview of the filteredpersisted view 1020. The second visual preview of the filtered persistedview 1020 may comprise emails received in April from Bill. In this way,the email application may be in the second state 1012, where the secondvisual preview of the filtered persisted view 1020 is presented basedupon the user referencing the new identifier (To=“Bill”) after apersisted view of emails 1010 was presented.

FIG. 11 illustrates an example 1100 of an email application in a firststate 1102 after a new identifier is referenced, and the emailapplication in a second state 1112 after the new referenced identifieris unreferenced. The email application may comprise a ribbon userinterface that may allow the user to filter and/or search emails. Theribbon user interface may comprise gallery menus (e.g., to gallery). Agallery menu may comprise a set of identifiers (e.g., set of toidentifiers 1106) that may be referenced by user input to view visualpreviews; unreferenced by user input to remove visual previews; and/orselected by user input to perform a particular search for persistedsearch results.

In one example, a user may have selected a particular identifier, suchas identifier (Date=“April”). In response to the selection, a persistedview of emails may have been presented within the email application.Additionally, the user may have subsequently referenced 1108 a newidentifier (To=“Bill”). In response to the referencing, a second visualpreview of the filtered persisted view 1110 may be presented asillustrated in the first state 1102.

Subsequently, the user may determine that the desired email was stillreceived in April, but was not sent by Bill. Thus, the user mayunreference 1118 the new identifier (To=“Bill”) by hovering off the newidentifier (To=“Bill”), the to gallery, and/or the ribbon userinterface. In response to the user input unreferencing the newidentifier (To=“Bill”), the second visual preview of the filteredpersisted view 1110 may be replaced with the persisted view of emails1120 (the persisted view of emails received in April). In this way, theemail application may be in the second state 1112, where the secondvisual preview of the filtered persisted view 1110 comprising emailsreceived in April from Bill is replaced by the persisted view of emails1120 comprising emails from anyone during April.

Still another embodiment involves a computer-readable medium comprisingprocessor-executable instructions configured to implement one or more ofthe techniques presented herein. An exemplary computer-readable mediumthat may be devised in these ways is illustrated in FIG. 12, wherein theimplementation 1200 comprises a computer-readable medium 1216 (e.g., aCD-R, DVD-R, or a platter of a hard disk drive), on which is encodedcomputer-readable data 1214. This computer-readable data 1214 in turncomprises a set of computer instructions 1212 configured to operateaccording to one or more of the principles set forth herein. In one suchembodiment 1200, the processor-executable computer instructions 1212 maybe configured to perform a method 1210, such as the exemplary method 100of FIG. 1 and/or exemplary method 200 of FIG. 2, for example. In anothersuch embodiment, the processor-executable instructions 1212 may beconfigured to implement a system, such as the exemplary system 300 ofFIG. 3, for example. Many such computer-readable media may be devised bythose of ordinary skill in the art that are configured to operate inaccordance with the techniques presented herein.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

As used in this application, the terms“component,” “module,” “system”,“interface”, and the like are generally intended to refer to acomputer-related entity, either hardware, a combination of hardware andsoftware, software, or software in execution. For example, a componentmay be, but is not limited to being, a process running on a processor, aprocessor, an object, an executable, a thread of execution, a program,and/or a computer. By way of illustration, both an application runningon a controller and the controller can be a component. One or morecomponents may reside within a process and/or thread of execution and acomponent may be localized on one computer and/or distributed betweentwo or more computers.

Furthermore, the claimed subject matter may be implemented as a method,apparatus, or article of manufacture using standard programming and/orengineering techniques to produce software, firmware, hardware, or anycombination thereof to control a computer to implement the disclosedsubject matter. The term“article of manufacture” as used herein isintended to encompass a computer program accessible from anycomputer-readable device, carrier, or media. Of course, those skilled inthe art will recognize many modifications may be made to thisconfiguration without departing from the scope or spirit of the claimedsubject matter.

FIG. 13 and the following discussion provide a brief, generaldescription of a suitable computing environment to implement embodimentsof one or more of the provisions set forth herein. The operatingenvironment of FIG. 13 is only one example of a suitable operatingenvironment and is not intended to suggest any limitation as to thescope of use or functionality of the operating environment. Examplecomputing devices include, but are not limited to, personal computers,server computers, hand-held or laptop devices, mobile devices (such asmobile phones, Personal Digital Assistants (PDAs), media players, andthe like), multiprocessor systems, consumer electronics, mini computers,mainframe computers, distributed computing environments that include anyof the above systems or devices, and the like.

Although not required, embodiments are described in the general contextof“computer readable instructions” being executed by one or morecomputing devices. Computer readable instructions may be distributed viacomputer readable media (discussed below). Computer readableinstructions may be implemented as program modules, such as functions,objects, Application Programming Interfaces (APIs), data structures, andthe like, that perform particular tasks or implement particular abstractdata types. Typically, the functionality of the computer readableinstructions may be combined or distributed as desired in variousenvironments.

FIG. 13 illustrates an example of a system 1310 comprising a computingdevice 1312 configured to implement one or more embodiments providedherein. In one configuration, computing device 1312 includes at leastone processing unit 1316 and memory 1318. Depending on the exactconfiguration and type of computing device, memory 1318 may be volatile(such as RAM, for example), non-volatile (such as ROM, flash memory,etc., for example) or some combination of the two. This configuration isillustrated in FIG. 13 by dashed line 1314.

In other embodiments, device 1312 may include additional features and/orfunctionality. For example, device 1312 may also include additionalstorage (e.g., removable and/or non-removable) including, but notlimited to, magnetic storage, optical storage, and the like. Suchadditional storage is illustrated in FIG. 13 by storage 1320. In oneembodiment, computer readable instructions to implement one or moreembodiments provided herein may be in storage 1320. Storage 1320 mayalso store other computer readable instructions to implement anoperating system, an application program, and the like. Computerreadable instructions may be loaded in memory 1318 for execution byprocessing unit 1316, for example.

The term“computer readable media” as used herein includes computerstorage media. Computer storage media includes volatile and nonvolatile,removable and non-removable media implemented in any method ortechnology for storage of information such as computer readableinstructions or other data. Memory 1318 and storage 1320 are examples ofcomputer storage media. Computer storage media includes, but is notlimited to, RAM, ROM, EEPROM, flash memory or other memory technology,CD-ROM, Digital Versatile Disks (DVDs) or other optical storage,magnetic cassettes, magnetic tape, magnetic disk storage or othermagnetic storage devices, or any other medium which can be used to storethe desired information and which can be accessed by device 1312. Anysuch computer storage media may be part of device 1312.

Device 1312 may also include communication connection(s) 1326 thatallows device 1312 to communicate with other devices. Communicationconnection(s) 1326 may include, but is not limited to, a modem, aNetwork Interface Card (NIC), an integrated network interface, a radiofrequency transmitter/receiver, an infrared port, a USB connection, orother interfaces for connecting computing device 1312 to other computingdevices. Communication connection(s) 1326 may include a wired connectionor a wireless connection. Communication connection(s) 1326 may transmitand/or receive communication media.

The term “computer readable media” may include communication media.Communication media typically embodies computer readable instructions orother data in a “modulated data signal” such as a carrier wave or othertransport mechanism and includes any information delivery media. Theterm “modulated data signal” may include a signal that has one or moreof its characteristics set or changed in such a manner as to encodeinformation in the signal.

Device 1312 may include input device(s) 1324 such as keyboard, mouse,pen, voice input device, touch input device, infrared cameras, videoinput devices, and/or any other input device. Output device(s) 1322 suchas one or more displays, speakers, printers, and/or any other outputdevice may also be included in device 1312. Input device(s) 1324 andoutput device(s) 1322 may be connected to device 1312 via a wiredconnection, wireless connection, or any combination thereof. In oneembodiment, an input device or an output device from another computingdevice may be used as input device(s) 1324 or output device(s) 1322 forcomputing device 1312.

Components of computing device 1312 may be connected by variousinterconnects, such as a bus. Such interconnects may include aPeripheral Component Interconnect (PCI), such as PCI Express, aUniversal Serial Bus (USB), firewire (IEEE 1394), an optical busstructure, and the like. In another embodiment, components of computingdevice 1312 may be interconnected by a network. For example, memory 1318may be comprised of multiple physical memory units located in differentphysical locations interconnected by a network.

Those skilled in the art will realize that storage devices utilized tostore computer readable instructions may be distributed across anetwork. For example, a computing device 1330 accessible via a network1328 may store computer readable instructions to implement one or moreembodiments provided herein. Computing device 1312 may access computingdevice 1330 and download a part or all of the computer readableinstructions for execution. Alternatively, computing device 1312 maydownload pieces of the computer readable instructions, as needed, orsome instructions may be executed at computing device 1312 and some atcomputing device 1330.

Various operations of embodiments are provided herein. In oneembodiment, one or more of the operations described may constitutecomputer readable instructions stored on one or more computer readablemedia, which if executed by a computing device, will cause the computingdevice to perform the operations described. The order in which some orall of the operations are described should not be construed as to implythat these operations are necessarily order dependent. Alternativeordering will be appreciated by one skilled in the art having thebenefit of this description. Further, it will be understood that not alloperations are necessarily present in each embodiment provided herein.

Moreover, the word “exemplary” is used herein to mean serving as anexample, instance, or illustration. Any aspect or design describedherein as “exemplary” is not necessarily to be construed as advantageousover other aspects or designs. Rather, use of the word exemplary isintended to present concepts in a concrete fashion. As used in thisapplication, the term “or” is intended to mean an inclusive “or” ratherthan an exclusive “or”. That is, unless specified otherwise, or clearfrom context, “X employs A or B” is intended to mean any of the naturalinclusive permutations. That is, if X employs A; X employs B; or Xemploys both A and B, then “X employs A or B” is satisfied under any ofthe foregoing instances. In addition, the articles “a” and “an” as usedin this application and the appended claims may generally be construedto mean “one or more” unless specified otherwise or clear from contextto be directed to a singular form.

Also, although the disclosure has been shown and described with respectto one or more implementations, equivalent alterations and modificationswill occur to others skilled in the art based upon a reading andunderstanding of this specification and the annexed drawings. Thedisclosure includes all such modifications and alterations and islimited only by the scope of the following claims. In particular regardto the various functions performed by the above described components(e.g., elements, resources, etc.), the terms used to describe suchcomponents are intended to correspond, unless otherwise indicated, toany component which performs the specified function of the describedcomponent (e.g., that is functionally equivalent), even though notstructurally equivalent to the disclosed structure which performs thefunction in the herein illustrated exemplary implementations of thedisclosure. In addition, while a particular feature of the disclosuremay have been disclosed with respect to only one of severalimplementations, such feature may be combined with one or more otherfeatures of the other implementations as may be desired and advantageousfor any given or particular application. Furthermore, to the extent thatthe terms “includes”, “having”, “has”, “with”, or variants thereof areused in either the detailed description or the claims, such terms areintended to be inclusive in a manner similar to the term“comprising.”

What is claimed is:
 1. A method for providing a live preview of searchresults, comprising: presenting a first visual preview comprising one ormore objects associated with a referenced identifier, the one or moreobjects having been retrieved and presented in response to a searchassociated with the identifier; receiving user input during thepresentation of the first visual preview; responsive to receiving theuser input: determining whether the received user input corresponds tounreferencing the referenced identifier, referencing a new identifier,or selecting the referenced identifier; when the user input correspondsto a first gesture unreferencing the referenced identifier, removing thefirst visual preview such that the one or more objects retrieved inresponse to a search associated with the identifier and presented in thefirst visual preview are no longer presented; when the user inputcorresponds to a second gesture selecting the referenced identifier,presenting a persistent view comprising at least the one or more objectsretrieved in response to a search associated with the identifier; andwhen the user input corresponds to a third gesture referencing a newidentifier, presenting a new search preview by retrieving one or moreobjects associated with a search using the new identifier as a searchcriteria and presenting a new preview comprising the one or more objectsassociated with the search using the new identifier as a searchcriteria.
 2. The method of claim 1, the first gesture corresponding to ahover off action.
 3. The method of claim 1, the second gesturecorresponding to a click action.
 4. The method of claim 1, comprising:receiving the user input during a presenting of the first visual previewof the one or more objects.
 5. The method of claim 1, comprising:retrieving the one or more objects using search criteria.
 6. The methodof claim 1, the first gesture different than the second gesture.
 7. Themethod of claim 1, the one or more objects corresponding to at least oneof emails, photos, music files, web content, hyperlinks, URLs or files.8. A system for providing a live preview of search results, the systemcomprising: one or more processing units; and memory comprisinginstructions that, when executed by at least one of the one or moreprocessing units, perform a method comprising: presenting a first visualpreview comprising one or more objects associated with a referencedidentifier, the one or more objects having been retrieved and presentedin response to a search associated with the identifier; receiving userinput during the presentation of the first visual preview; responsive toreceiving the user input: determining whether the received user inputcorresponds to unreferencing the referenced identifier, referencing anew identifier, or selecting the referenced identifier; when the userinput corresponds to a first gesture unreferencing the referencedidentifier, removing the first visual preview such that the one or moreobjects retrieved in response to a search associated with the identifierand presented in the first visual preview are no longer presented; whenthe user input corresponds to a second gesture selecting the referencedidentifier, presenting a persistent view comprising at least the one ormore objects retrieved in response to a search associated with theidentifier; and when the user input corresponds to a third gesturereferencing a new identifier, presenting a new search preview byretrieving one or more objects associated with a search using the newidentifier as a search criteria and presenting a new preview comprisingthe one or more objects associated with the search using the newidentifier as a search criteria.
 9. The system of claim 8, the firstgesture corresponding to a hover off action.
 10. The system of claim 8,the second gesture corresponding to a click action.
 11. The system ofclaim 8, the method comprising: receiving the user input during apresenting of the first visual preview of the one or more objects. 12.The system of claim 8, the method comprising: retrieving the one or moreobjects using search criteria.
 13. The system of claim 8, the firstgesture different than the second gesture.
 14. The system of claim 8,the one or more objects corresponding to at least one of emails, photos,music files, web content, hyperlinks, URLs or files.
 15. A computerprogram product for providing a live preview of search results, thecomputer program product comprising one or more computer readablestorage devices comprising instructions that when executed, perform amethod comprising: receiving a first user input corresponding to a firstgesture with respect to an identifier; retrieving one or more objectsusing the identifier as search criteria; presenting a first visualpreview of the one or more objects; while the first visual preview isbeing presented, receiving a second user input; and responsive toreceiving the second user input: determining whether the second userinput corresponds to unreferencing the referenced identifier,referencing a new identifier, or selecting the referenced identifier;when the second user input corresponds to a second gesture unreferencingthe referenced identifier, removing the first visual preview such thatthe one or more objects presented in the first visual preview are nolonger presented, when the second user input corresponds to a thirdgesture selecting the referenced identifier, presenting a persistentview comprising at least the one or more objects retrieved using theidentifier as search criteria; and when the second user inputcorresponds to a third gesture referencing a new identifier, presentinga new search preview by retrieving one or more objects associated with asearch using the new identifier as a search criteria and presenting anew preview comprising the one or more objects associated with the newidentifier.
 16. The computer program product of claim 15, the firstgesture corresponding to a hover over action.
 17. The computer programproduct of claim 16, the third gesture corresponding to a click action.18. The computer program product of claim 16, the second gesturecorresponding to a hover off action.
 19. The computer program product ofclaim 15, the method comprising: presenting a set of one or moreidentifiers within the persistent view; receiving a third user inputcorresponding to a fourth gesture with respect to a second identifier ofthe set; filtering the one or more objects based upon the secondidentifier to generate a second visual preview comprising a second setof objects comprising at least some of the one or more objects; andpresenting the second visual preview of the second set of objects. 20.The computer program product of claim 19, the method comprising:receiving a fourth user input unreferencing the second identifier; andremoving the second visual preview, such that the second set of objectsis not presented.